<?php
namespace module;

use houdunwang\request\Request;
use system\model\Keywords;

trait Wechat
{
	//将keywords保存到数据库（包括添加和编辑）
	final protected function saveKeywords($data)
	{
		//如果$data['module']有对应的模块名，则当前$module为$data['module']
		//如果没有对应的模块名，则通过get参数来获取
		$module = isset($data['module'])?$data['module']:Request::get('m');
		//数据库的查询条件
		//查询moudle的目的：区分相同的moudle_id的不同的moudle
		$where = [
			['module_id',$data['module_id']],
			['module',Request::get('m')]
		];
		//根据查询条件在数据库中查找，如果查到了取出一条数据(编辑)
		//如果没有查找到,就实例化keywords（添加）
		$keyWordsModel = Keywords::where($where)->first() ? : new Keywords();
		//将module存到$data数据中
		$data['module'] = $module;
		//保存到对应的数据库中
		$keyWordsModel->save($data);
	}

	/**
	 * 分配关键词变量
	 * @param $modeu_id =>关键词表module_id，也是对应baseContent表中主键id
	 */
	final protected function assignKeywords($modeu_id)
	{
		//数据库的查询条件
		//查询moudle的目的：区分相同的moudle_id的不同的moudle
		$where = [
			['module_id',$modeu_id],
			['module',Request::get('m')]
		];
		//根据查询条件在数据库中查找，如果查到了取出一条数据
		//如果没有查找到,就实例化keywords
		$keyWordsModel = Keywords::where($where)->first() ? : new Keywords();
        //将$keyWordsModel中的keywords分配到页面上
		View::with('keywords',$keyWordsModel['keywords']);
	}

	/**
	 * 删除关键词
	 */
	final protected function delKeywords($modeu_id)
	{
		//数据库的查询条件
		//查询moudle的目的：区分相同的moudle_id的不同的moudle
		$where = [
			['module_id',$modeu_id],
			['module',Request::get('m')]
		];
		//根据查询条件在数据库中查找，如果查到了取出一条数据
		//如果没有查找到,就实例化keywords
		$keyWordsModel = Keywords::where($where)->first() ? : new Keywords();
		//在模型$keyWordsModel对应的数据库中删除与查询条件相符的数据
		$keyWordsModel->destory();
	}
}